﻿namespace Sidvall.WorkItemManager.Net.Services.V1.Model
{
    public sealed partial class EntityFacade : global::Sidvall.WorkItemManager.Data.Model.EntityFacadeBase
    {
        #region Public Members

        #region WorkConditionManager

        private global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkConditionManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkCondition, global::Sidvall.WorkItemManager.Net.Services.V1.WorkConditionCollectionItem> _WorkConditionManager;
        public global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkConditionManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkCondition, global::Sidvall.WorkItemManager.Net.Services.V1.WorkConditionCollectionItem> WorkConditionManager
        {
            get
            {
                return _WorkConditionManager;
            }
            private set
            {
                _WorkConditionManager = value;
            }
        }

        #endregion
        #region WorkerManager

        private global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkerManager<global::Sidvall.WorkItemManager.Net.Services.V1.Worker, global::Sidvall.WorkItemManager.Net.Services.V1.WorkerCollectionItem> _WorkerManager;
        public global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkerManager<global::Sidvall.WorkItemManager.Net.Services.V1.Worker, global::Sidvall.WorkItemManager.Net.Services.V1.WorkerCollectionItem> WorkerManager
        {
            get
            {
                return _WorkerManager;
            }
            private set
            {
                _WorkerManager = value;
            }
        }

        #endregion
        #region WorkItemManager

        private global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItem, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemCollectionItem> _WorkItemManager;
        public global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItem, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemCollectionItem> WorkItemManager
        {
            get
            {
                return _WorkItemManager;
            }
            private set
            {
                _WorkItemManager = value;
            }
        }

        #endregion
        #region WorkItemLogManager

        private global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemLogManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemLog, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemLogCollectionItem> _WorkItemLogManager;
        public global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemLogManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemLog, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemLogCollectionItem> WorkItemLogManager
        {
            get
            {
                return _WorkItemLogManager;
            }
            private set
            {
                _WorkItemLogManager = value;
            }
        }

        #endregion
        #region WorkItemSensorManager

        private global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemSensorManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemSensor, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemSensorCollectionItem> _WorkItemSensorManager;
        public global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemSensorManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemSensor, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemSensorCollectionItem> WorkItemSensorManager
        {
            get
            {
                return _WorkItemSensorManager;
            }
            private set
            {
                _WorkItemSensorManager = value;
            }
        }

        #endregion
        #region WorkItemSensorLogManager

        private global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemSensorLogManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemSensorLog, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemSensorLogCollectionItem> _WorkItemSensorLogManager;
        public global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemSensorLogManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemSensorLog, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemSensorLogCollectionItem> WorkItemSensorLogManager
        {
            get
            {
                return _WorkItemSensorLogManager;
            }
            private set
            {
                _WorkItemSensorLogManager = value;
            }
        }

        #endregion
        #region WorkItemTypeManager

        private global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemTypeManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemType, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemTypeCollectionItem> _WorkItemTypeManager;
        public global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemTypeManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemType, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemTypeCollectionItem> WorkItemTypeManager
        {
            get
            {
                return _WorkItemTypeManager;
            }
            private set
            {
                _WorkItemTypeManager = value;
            }
        }

        #endregion
        #region WorkItemWorkConditionManager

        private global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemWorkConditionManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemWorkCondition, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemWorkConditionCollectionItem> _WorkItemWorkConditionManager;
        public global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemWorkConditionManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemWorkCondition, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemWorkConditionCollectionItem> WorkItemWorkConditionManager
        {
            get
            {
                return _WorkItemWorkConditionManager;
            }
            private set
            {
                _WorkItemWorkConditionManager = value;
            }
        }

        #endregion
        #region WorkRetryPolicyManager

        private global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkRetryPolicyManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkRetryPolicy, global::Sidvall.WorkItemManager.Net.Services.V1.WorkRetryPolicyCollectionItem> _WorkRetryPolicyManager;
        public global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkRetryPolicyManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkRetryPolicy, global::Sidvall.WorkItemManager.Net.Services.V1.WorkRetryPolicyCollectionItem> WorkRetryPolicyManager
        {
            get
            {
                return _WorkRetryPolicyManager;
            }
            private set
            {
                _WorkRetryPolicyManager = value;
            }
        }

        #endregion
        
        #endregion
        #region Constructors

        [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Maintainability", "CA1506:AvoidExcessiveClassCoupling")]
        public EntityFacade() 
            : base(global::Sidvall.WorkItemManager.Net.Services.V1.Model.ResourceFactory.Current)
        {
            this.WorkConditionManager = new global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkConditionManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkCondition, global::Sidvall.WorkItemManager.Net.Services.V1.WorkConditionCollectionItem>(this);
            this.WorkerManager = new global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkerManager<global::Sidvall.WorkItemManager.Net.Services.V1.Worker, global::Sidvall.WorkItemManager.Net.Services.V1.WorkerCollectionItem>(this);
            this.WorkItemManager = new global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItem, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemCollectionItem>(this);
            this.WorkItemLogManager = new global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemLogManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemLog, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemLogCollectionItem>(this);
            this.WorkItemSensorManager = new global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemSensorManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemSensor, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemSensorCollectionItem>(this);
            this.WorkItemSensorLogManager = new global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemSensorLogManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemSensorLog, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemSensorLogCollectionItem>(this);
            this.WorkItemTypeManager = new global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemTypeManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemType, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemTypeCollectionItem>(this);
            this.WorkItemWorkConditionManager = new global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkItemWorkConditionManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemWorkCondition, global::Sidvall.WorkItemManager.Net.Services.V1.WorkItemWorkConditionCollectionItem>(this);
            this.WorkRetryPolicyManager = new global::Sidvall.WorkItemManager.Data.Model.EntityManagers.WorkRetryPolicyManager<global::Sidvall.WorkItemManager.Net.Services.V1.WorkRetryPolicy, global::Sidvall.WorkItemManager.Net.Services.V1.WorkRetryPolicyCollectionItem>(this);
        }

        #endregion
    }
}